/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package Negocio;

import Datos.Conexion;
import java.sql.CallableStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.JComboBox;
import javax.swing.JTable;
import javax.swing.table.DefaultTableModel;

/**
 *
 * @author Pedro
 */


public class clsCargo {
    public static void Insertar_Cargo(String Nombre , String descripcion){
        
        try {
            String sql = "call `insert_Cargo`(?,?)";
            CallableStatement proc = Conexion.conn.prepareCall(sql);
            proc.setString(1, Nombre);
            proc.setString(2, descripcion);
            proc.executeUpdate();
        } catch (Exception e) {
            System.out.println("error al insertar el  cargo ");
        }
        
    }
    
    public static void obtener_Cargos (JComboBox cbx,String sql){
        cbx.removeAllItems();
        try {
            ResultSet rs = Conexion.executeQuery(Conexion.conn, sql, null);
            while (rs.next()){
                cbx.addItem(rs.getString(1));
            }
        } catch (Exception e) {
            System.out.println("error al leer los datos" + e );
        }
        
    }
    public static int obtener_idCargo(String nomb ){
        try {
            String sql = "CALL `obtener_idCargo`("+'"'+nomb+'"'+")";
            ResultSet rs = Conexion.executeQuery(Conexion.conn, sql, null);
            while (rs.next()){
              return rs.getInt(1);
            }
        } catch (Exception e) {
            System.out.println("error al obtner id cargo "+e );
        }
        return -1;
        
    }
    public static void actualizar_cargo(int idcarg, String nomb , String Descrip){
        try {
            String sql = "call `actualizar_Cargo`(?,?,?)";
                CallableStatement proc = Conexion.conn.prepareCall(sql);
                proc.setInt(1, idcarg);
                proc.setString(2, nomb);
                proc.setString(3, Descrip);
                proc.executeUpdate();
        } catch (SQLException ex) {
            System.out.println("error al actualizar "+ ex );
        }
        
            
        
    }
    public static void obtner_ListaCargos(JTable tb ){
        try {
            String sql = " call `obtener_ListaCargos`()";
            ResultSet rs = Conexion.executeQuery(Conexion.conn, sql, null);
            DefaultTableModel tabla = (DefaultTableModel) tb.getModel();
            while (rs.next()){
               Object t[] =new Object[3];
               t[0]=rs.getInt(1);
               t[1] = rs.getString(2);
               t[2] = rs.getString(3);
               tabla.addRow(t);
            }
            
        } catch (Exception e) {
            System.out.println("error al mostrar la lista " + e );
            
        }
    }
    public static String obtener_NombresdeCargos(int idCargo){
        try {
            String sql = "CALL `obtener_NombresCargos`("+'"'+idCargo+'"'+")";
            ResultSet rs = Conexion.executeQuery(Conexion.conn, sql, null);
            while (rs.next()){
                System.out.println(rs);
              return rs.getString(1);
            }
        } catch (Exception e) {
        
            System.out.println("error al mostrar  el nombre del  cargo "+e);
        }
        return "error error";
    }
    
}
